<?
/*-- Project Introduce --*/


/**
 * What's this Class ?
 *
 * @author		alee
 * @access		public
 */
abstract class JCAT_ORMOperatorBase implements JCAT_IORMOperator 
{
	/**
	 * Description
	 *
	 * @access	public
	 * @param	$aModel		JCAT_IDBModel
	 * @return	void
	 */
	public function JCAT_ORMOperatorBase(JCAT_IDBModel $aModel)
	{
		$this->aModel = $aModel;
	}
	
	/**
	 * Description
	 *
	 * @access	public
	 * @return	JCAT_IDBModel
	 */
	public function GetOperandModel()
	{
		return $this->aModel ;
	}
	
	/**
	 * Description
	 *
	 * @access	public
	 * @param	$Parameter
	 * @return	void
	 */
	public function VisitRuleFieldsMapping(JCAT_IORMRule_FieldsToProperties $aRule)
	{
		// do nothing implementation
	}
	
	/**
	 * Description
	 *
	 * @access	public
	 * @param	$Parameter
	 * @return	void
	 */
	public function VisitRuleHasOne(JCAT_ORMRule_TLOneToOne $aRule)
	{
		// do nothing implementation
	}
	
	/**
	 * Description
	 *
	 * @access	public
	 * @param	$Parameter
	 * @return	void
	 */
	public function VisitRuleBelongTo(JCAT_ORMRule_TLOneToOne $aRule)
	{
		// do nothing implementation
	}
	
	/**
	 * Description
	 *
	 * @access	public
	 * @param	$Parameter
	 * @return	void
	 */
	public function VisitRuleHasMany(JCAT_ORMRule_TLHasMany $aRule)
	{
		// do nothing implementation
	}
	
	/**
	 * Description
	 *
	 * @access	public
	 * @param	$Parameter
	 * @return	void
	 */
	public function VisitRuleHasAndBelongsToMany(JCAT_ORMRule_TLHasAndBelongsToMany $aRule)
	{
		// do nothing implementation
	}
	
	/**
	 * Description
	 * 
	 * @access	private
	 * @var		JCAT_IDBModel
	 */
	private $aModel ;
}

?>